import store from '@/store'
import router from '@/router'
import Nprogress from 'nprogress'
import 'nprogress/nprogress.css'
// 前置导航守卫
router.beforeEach((to, form, next) => {
    // 这里使用的是白名单,也可以使用路由元写法
    const White = ['/login', '/404']
        // 有token的时候
    Nprogress.start()
    if (store.getters.token) {
        // 进入的是否为需要登录才能浏览的页面
        if (to.fullPath === '/login') {
            next('/')
        } else {
            next()
        }
    }
    // 无token的时候
    else {
        // 进入错误404页面和login登录页面
        if (White.includes(to.fullPath.toLowerCase())) {
            next()
        } else {
            next('/login')
        }
    }
    // 这里需要加Nprogress.done(),因为重定向的时候,页面不会跳转(不会进入后置导航守卫,进度条Nprogress会一直处于加载中状态)
    Nprogress.done()
})

router.afterEach((to, form, next) => {
    Nprogress.done()
})